Bei Posts handelt es sich um die CMS Beiträge. Diese können über die API abgefragt, geändert und gelöscht werden.
Welche Felder im einzelnen bei Artikeln zur Verfügung stehen, kann am Besten in der API Testumgebung getestet werden. Diese verfügt über eine kontextgesteuerte Dokumentation und ist immer an den aktuellen Entwicklungsstand angepasst.
Eine Dokumentation dazu finden Sie auch im Post Typen.
{warning} Die brshop24 API hat den Status "Work in progress". Bei dieser Dokumentation handelt sich um einen Vorabzug zu Testzwecken.
Eine einfache Abfrage der Beiträge kann wie folgt formuliert werden:
query posts {
posts {
data {
id
title
subtitle
excerpt
body
}
total
current_page
from
to
}
}
Eine Abfrage aller veröffenlichten Posts könnte so aussehen:
query posts {
posts (where: {published:true}) {
data {
id
slug
title
subtitle
excerpt
body
}
total
current_page
from
to
}
}
Das Erstellen eines Posts könnte so aussehen:
mutation createPost {
createPost (
data: {
slug: "erstellung-eines-posts"
translations: [{
language_code: "de"
title: "Erstellen eines Posts"
body: "So wird ein Post erstellt"
}]
}
) {
id
}
}
als Ergebnis wird hier, wie angefordert, die id des Posts zurück gegeben:
{
"data": {
"createPost": {
"id": 18
}
}
}
Den oben erstellten Post kann man wie folgt ändern:
mutation updatePost {
updatePost (
data: {
translations: {
language_code: "en"
title: "the englsh post"
body: "an eglish text"
}
}
where: {
id: 18
}
) {
translations (where: {language_code:"en"}) {
title
body
}
}
}
Damit wird eine englische Übersetzung des Posts angelegt, Ergebnis:
{
"data": {
"updatePost": {
"translations": [
{
"title": "the englsh post",
"body": "an eglish text"
}
]
}
}
}
Den vorher angelegten Post kann man mit folgendem Statement wieder löschen:
mutation deletePost {
deletePost (where: { id: 18})
{
id
}
}
Als Ergebnis wird hierbei wieder die ID des Posts ausgegeben:
{
"data": {
"deletePost": {
"id": 18
}
}
}